home *** CD-ROM | disk | FTP | other *** search
- #include <stdio.h>
- #include <stdlib.h>
- #include <osbind.h>
- #include "st52.h"
-
- char *
- itoa(int num, char *str, int radix)
- {
- char format[] = "%d";
-
- switch (radix)
- {
- case 8: format[1] = 'o';
- break;
- case 10: format[1] = 'd';
- break;
- case 16: format[1] = 'x';
- break;
- }
-
- sprintf(str, format, num);
- return (str);
- }
-
-
-
-
- void
- config_bps()
- {
- char key;
- static int rates[16] = { 19200, 9600, 4800, 3600, 2400, 2000, 1800, 1200,
- 600, 300, 200, 150, 130, 110, 75, 50 };
- char keys[] = "0123456789abcdef";
- int i;
- char temp[6];
-
- Cconws("\n");
- for (i = 0 ; i < 16 ; i++)
- {
- Cconws(itoa(i, temp, 16));
- Cconws(": ");
- Cconws(itoa(rates[i], temp, 10));
- Cconws("\n");
- }
- Cconws("\n");
- Cconws("Choose: ");
- key = (char) (Cconin() & KEYMASK);
-
- for (i = 0; i < 16; i++)
- {
- if (keys[i] == key)
- {
- (void) Rsconf(i, -1, -1, -1, -1, -1);
- Cconws("\nSpeed set to ");
- Cconws(itoa(rates[i], temp, 10));
- Cconws(" bps.");
- }
- }
- Cconws("\n");
- }
-
- void
- config_ucr()
- {
- Cconws("Not implemented.\n");
- }
-
- void
- config()
- {
- char key;
-
- do
- {
- Cconws("\n");
- Cconws("0: exit to terminal emulator\n");
- Cconws("1: set bps rate\n");
- Cconws("2: set ucr bits (parity etc.)\n");
- Cconws("\n");
- Cconws("Choose: ");
-
- key = (char) (Cconin() & KEYMASK);
- Cconws("\n");
-
- switch (key)
- {
- case '1': config_bps();
- break;
- case '2': config_ucr();
- break;
- }
- }
- while (key != '0');
-
-
- }
-